*** Settings ***
Resource  ../流程层.robot
Suite Setup  进入分布式日志下载页
Suite Teardown  关闭浏览器
Force Tags  回归测试

*** Variables ***
&{sysLog}  path=/home/lixiaolong/public  doc=logs  file=node_01.log

*** Test Cases ***
分布式日志检索正例
    [Documentation]  需要准备一个服务器的日志文件路径，并在此路径中有个日志文件夹
    # 点击服务器节点下拉框
    点击元素  xpath=//*[@id="app"]/div/div[1]/div[2]/div/form/div[1]/div[1]/div[1]/div/div/div[1]/div/div/input
    # 选择服务器节点
    点击元素  xpath=/html/body/div[2]/div[1]/div[1]/ul/li/span
    # 输入日志路径
    输入文本  xpath=//*[@id="app"]/div/div[1]/div[2]/div/form/div[1]/div[1]/div[2]/div/div/span/div/input
    ...  ${sysLog}[path]
    # 点击检索按钮
    点击元素  xpath=//*[@id="app"]/div/div[1]/div[2]/span/button[1]
    # 在此路径下应该有个logs文件夹,即${logPath}[doc]
    wait until element is visible  xpath=//span[text()='logs']
    # 判断文件无法点击下载
    element should be disabled
    ...  xpath=//*[@id="app"]/div/div[2]/div[2]/div/div/div/div[1]/div[3]/table/tbody/tr/td[5]/div/div/div/span/button
    # 点击名称进入文件夹
    点击元素  xpath=//span[text()='logs']
    # 获取日志文件${logPath}[file]文本,日志文件名称改变需变更下方元素文本
    ${logName}  获取文本  xpath=//span[text()='node_01.log']
    should be equal  ${logName}  ${sysLog}[file]
    # 点击下载按钮
    点击元素  xpath=//*[@id="app"]/div/div[2]/div[2]/div/div/div/div[1]/div[3]/table/tbody/tr[4]/td[5]/div/div/div/span/button
    sleep  1

返回上一级按钮功能测试
    # 点击返回上一级按钮
    点击元素  xpath=//*[@id="app"]/div/div[2]/div[1]/div/ul/li/button
    # 获取文件名文本
    ${docText}  获取文本  xpath=//span[text()='logs']
    # 断言
    should be equal  ${docText}  ${sysLog}[doc]

清空按钮功能测试
    # 点击清空按钮
    点击元素  xpath=//*[@id="app"]/div/div[1]/div[2]/span/button[2]
    # 获取服务器节点地址及日志路径的输入内容
    ${value1}  获取值  xpath=//*[@id="app"]/div/div[1]/div[2]/div/form/div[1]/div[1]/div[1]/div/div/div/div/div/input
    ${value2}  获取值  xpath=//*[@id="app"]/div/div[1]/div[2]/div/form/div[1]/div[1]/div[2]/div/div/span/div/input
    # 清空后输入内容为空判断
    should be empty  ${value1}
    should be empty  ${value2}